#pragma once
#include "CBaseImage.h"

class CDicomImage : public CBaseImage
{
public:
	CDicomImage();
	virtual ~CDicomImage();

	mutable std::mutex m_mtx;
	mutable std::mutex m_parsermtx;
public:
	BOOL ParseFile(std::string fn);

	void GetDefaultWindow(double& wc, double& ww);
	void GetRange(double& minVal, double& maxVal);

    BOOL CreateDIB(void*& pdib, int& w, int& h, int wc, int ww, int frame=0, bool bneg = false);

	virtual int GetFrameCount();
	virtual void Close();
    virtual BOOL ReParseFile();

	bool Export(std::string dst, int format);

};

